// 这里是配置 渠道搜索 货品搜索 供应商搜索的 条件选项 和列表选项
import { TableHeaderConfig, FormListConfig } from '@/typings';
import commonApiUrl from '@/api/common-api/index';
// 渠道搜索/货品搜索/供应商搜索/资金号搜索 需要自定义字段
// 渠道搜索的配置
export const channelFormList: FormListConfig[] = [
    {
        label: '编号',
        value: 'code',
        en: 'code',
        lang: 'channelHighSearch.formlist.code',
        type: 'input',
        options: [],
        setLength: 24
    },
    {
        label: '名称',
        value: 'name',
        en: 'name',
        lang: 'channelHighSearch.formlist.name',
        type: 'input',
        options: [],
        setLength: 24
    },
    {
        label: '区域',
        value: 'regionList',
        en: 'region',
        matchSelectKey: 'areaTreeList',
        lang: 'channelHighSearch.formlist.region',
        type: 'cascader',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '组织架构',
        value: 'organizationList',
        en: 'organization',
        matchSelectKey: 'organizationTreeList',
        lang: 'channelHighSearch.formlist.organization',
        type: 'cascader',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '品牌',
        value: 'brandIdList',
        en: 'brand',
        lang: 'channelHighSearch.formlist.brandId',
        matchSelectKey: 'brandList',
        type: 'select',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '业态',
        value: 'businessFormatIdList',
        en: 'Type of Style',
        lang: 'channelHighSearch.formlist.businessFormatId',
        type: 'select',
        matchSelectKey: 'businessFormatList',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '等级',
        value: 'gradeIdList',
        en: 'Style',
        lang: 'channelHighSearch.formlist.gradeId',
        type: 'select',
        matchSelectKey: 'gradeList',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '户口',
        value: 'receivableChannelIdList',
        en: 'Registered residence',
        lang: 'channelHighSearch.formlist.receivableChannelId',
        type: 'select',
        matchSelectKey: 'receivableChannelList',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '经营性质',
        value: 'businessNatureIdList',
        en: 'business Nature',
        lang: 'channelHighSearch.formlist.businessNatureList',
        type: 'select',
        matchSelectKey: 'businessNatureList',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    }
];
export const channelTabelColumn: TableHeaderConfig[] = [
    {
        label: '渠道编号',
        value: 'code',
        en: 'Channel Id',
        lang: 'channelHighSearch.tableHeader.code'
    },
    {
        label: '渠道简称',
        value: 'name',
        en: 'Channel Name',
        lang: 'channelHighSearch.tableHeader.name'
    }
];
export const channelSearchConfig = {
    formList: channelFormList,
    tableColumn: channelTabelColumn,
    title: 'channelHighSearch.title',
    api: commonApiUrl.channelHighSearch,
    selectApi: commonApiUrl.getChannelSearchSelect,
    getCusotmerFieldsApi: `${commonApiUrl.getCusotmerFields}/120001`
};
// 货品搜索的配置
export const goodsFormList: FormListConfig[] = [
    {
        label: '货名',
        value: 'code',
        en: 'name',
        lang: 'goodsHighSearch.formlist.code',
        type: 'input',
        options: [],
        setLength: 24
    },
    {
        label: '品名',
        value: 'name',
        en: 'name',
        lang: 'goodsHighSearch.formlist.name',
        type: 'input',
        options: [],
        setLength: 24
    },
    {
        label: '品牌',
        value: 'brandIdList',
        en: 'brand',
        lang: 'goodsHighSearch.formlist.brandId',
        matchSelectKey: 'brandList',
        type: 'select',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '类别',
        value: 'categoryIdList',
        en: 'category',
        lang: 'goodsHighSearch.formlist.categoryId',
        type: 'select',
        matchSelectKey: 'categoryList',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '系列',
        value: 'seriesIdList',
        en: 'series',
        lang: 'goodsHighSearch.formlist.seriesId',
        type: 'select',
        matchSelectKey: 'seriesList',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '款型',
        value: 'patternIdList',
        en: 'Type of Style',
        lang: 'goodsHighSearch.formlist.patternId',
        type: 'select',
        matchSelectKey: 'patternList',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '风格',
        value: 'styleIdList',
        en: 'Style',
        lang: 'goodsHighSearch.formlist.styleId',
        type: 'select',
        matchSelectKey: 'styleList',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '销售分类',
        value: 'saleClassIdList',
        en: 'Sales classification',
        lang: 'goodsHighSearch.formlist.saleClassId',
        matchSelectKey: 'saleClassList',
        type: 'select',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '年份',
        value: 'yearIdList',
        en: 'Years',
        lang: 'goodsHighSearch.formlist.yearId',
        type: 'select',
        matchSelectKey: 'yearList',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '季节',
        value: 'seasonIdList',
        en: 'Season',
        lang: 'goodsHighSearch.formlist.seasonId',
        matchSelectKey: 'seasonList',
        type: 'select',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '波段',
        value: 'bandIdList',
        en: 'Wave Band',
        lang: 'goodsHighSearch.formlist.bandId',
        type: 'select',
        matchSelectKey: 'bandList',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },

    {
        label: '性别',
        value: 'sexIdList',
        en: 'Sex',
        lang: 'goodsHighSearch.formlist.sexId',
        type: 'select',
        matchSelectKey: 'sexList',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '状态',
        value: 'statusList',
        en: 'State',
        lang: 'goodsFiels.list.filter.status',
        setLength: 24,
        matchSelectKey: 'statusList',
        options: [],
        type: 'select',
        config: {
            multiple: true
        }
    }
];
export const goodsTableColumn: TableHeaderConfig[] = [
    {
        label: '货品货号',
        value: 'code',
        en: 'Item Number',
        lang: 'goodsHighSearch.tableHeader.code'
    },
    {
        label: '货品名称',
        value: 'name',
        en: 'Product Name',
        lang: 'goodsHighSearch.tableHeader.name'
    }
];
export const goodsSearchConfig = {
    formList: goodsFormList,
    tableColumn: goodsTableColumn,
    title: 'goodsHighSearch.title',
    api: commonApiUrl.goodsHighSearch,
    selectApi: commonApiUrl.getGoodsSearchSelect,
    isImport: true,
    moduleId: 120003,
    getCusotmerFieldsApi: `${commonApiUrl.getCusotmerFields}/120003`
};
// 供应商搜索的配置
export const supplierFormList: FormListConfig[] = [
    {
        label: '供应商编号',
        value: 'code',
        en: 'name',
        lang: 'supplierHighSearch.formlist.code',
        type: 'input',
        options: [],
        setLength: 24
    },
    {
        label: '供应商全称',
        value: 'fullName',
        en: 'fullName',
        lang: 'supplierHighSearch.formlist.fullName',
        type: 'input',
        options: [],
        setLength: 24
    },
    {
        label: '供应商简称',
        value: 'name',
        en: 'Supplie Full Name',
        lang: 'supplierHighSearch.formlist.name',
        type: 'input',
        setLength: 24
    },
    {
        label: '供应商分类',
        value: 'typeList',
        en: 'Supplier classification',
        lang: 'supplierHighSearch.formlist.type',
        type: 'select',
        matchSelectKey: 'typeList',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '性质',
        value: 'natureId',
        en: 'Nature',
        lang: 'supplierHighSearch.formlist.natureId',
        type: 'select',
        matchSelectKey: 'natureList',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },

    {
        label: '区域',
        value: 'regionList',
        en: 'Area',
        lang: 'supplierHighSearch.formlist.region',
        type: 'cascader',
        matchSelectKey: 'areaTreeList',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '资金号',
        value: 'fundAccountIdList',
        en: 'Fund number',
        lang: 'supplierHighSearch.formlist.fundAccountId',
        type: 'select',
        matchSelectKey: 'fundAccountList',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '等级',
        value: 'gradeIdList',
        en: 'Grade',
        lang: 'supplierHighSearch.formlist.gradeId',
        type: 'select',
        matchSelectKey: 'gradeList',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '状态',
        value: 'statusList',
        en: 'State',
        matchSelectKey: 'statusList',
        lang: 'supplierHighSearch.formlist.status',
        setLength: 24,
        type: 'select',
        options: [],
        config: {
            multiple: true
        }
    }
];
export const supplierTableColumn: TableHeaderConfig[] = [
    {
        label: '供应商编号',
        value: 'code',
        en: 'Item Number',
        lang: 'supplierHighSearch.tableHeader.code'
    },
    {
        label: '供应商简称',
        value: 'name',
        en: 'Supplie Name',
        lang: 'supplierHighSearch.tableHeader.name'
    }
];
export const supplierSearchConfig = {
    formList: supplierFormList,
    tableColumn: supplierTableColumn,
    title: 'supplierHighSearch.title',
    api: commonApiUrl.supplierHighSearch,
    selectApi: commonApiUrl.getsupplierSearchSelect,
    getCusotmerFieldsApi: `${commonApiUrl.getCusotmerFields}/120002`
};
// 资金号搜索的配置
export const capitalFormList: FormListConfig[] = [
    {
        label: '资金号',
        value: 'code',
        en: 'code',
        lang: 'capitalHighSearch.formlist.code',
        type: 'input',
        options: [],
        setLength: 24
    },
    {
        label: '资金号名称',
        value: 'name',
        en: 'name',
        lang: 'capitalHighSearch.formlist.name',
        type: 'input',
        setLength: 24
    },
    {
        label: '上级资金号',
        value: 'parentCode',
        en: 'parentCode',
        lang: 'capitalHighSearch.formlist.parentCode',
        type: 'input',
        options: [],
        setLength: 24
    },
    {
        label: '上级资金号名称',
        value: 'parentName',
        en: 'parentName',
        lang: 'capitalHighSearch.formlist.parentName',
        type: 'input',
        setLength: 24
    },
    {
        label: '组织架构',
        value: 'organizationList',
        en: 'organization',
        matchSelectKey: 'organizationTreeList',
        lang: 'capitalHighSearch.formlist.organization',
        type: 'cascader',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '应收/应付类型',
        en: 'type',
        lang: 'capitalHighSearch.formlist.type',
        value: 'typeList',
        matchSelectKey: 'typeList',
        type: 'select',
        setLength: 24,
        options: [
            {
                label: '全部',
                value: 0
            },
            {
                label: '应收',
                value: 1
            },
            {
                label: '应付',
                value: 2
            }
        ]
    }
];
export const capitalTableColumn: TableHeaderConfig[] = [
    {
        width: '100',
        label: '资金号',
        value: 'code',
        en: 'bill Id',
        lang: 'capitalHighSearch.tableHeader.code'
    },
    {
        width: '100',
        label: '资金号名称',
        value: 'name',
        en: 'name',
        lang: 'capitalHighSearch.tableHeader.name'
    }
];
export const capitalSearchConfig = {
    formList: capitalFormList,
    tableColumn: capitalTableColumn,
    title: 'capitalHighSearch.title',
    api: commonApiUrl.capitalSearch,
    selectApi: commonApiUrl.getFundAccountSelect,
    getCusotmerFieldsApi: `${commonApiUrl.getCusotmerFields}/120006`
};

// 单据搜索的配置
export const billFormList: FormListConfig[] = [
    {
        label: '单据编号',
        value: 'billNo',
        en: 'billNo',
        lang: 'salePlainAdjustment.detail.formList.billNo',
        type: 'input',
        setLength: 24
    },
    {
        label: '手工单号',
        value: 'manualId',
        en: 'manualId',
        lang: 'salePlainAdjustment.detail.formList.manualId',
        type: 'input',
        setLength: 24
    },
    {
        label: '业务类型',
        value: 'businessTypeIdList',
        en: 'businessTypeId',
        matchSelectKey: 'businessTypeList',
        lang: 'salePlain.list.filter.businessTypeIdList',
        type: 'select',
        options: [],
        config: {
            multiple: true
        },
        setLength: 24
    },
    {
        label: '价格类型',
        value: 'priceTypeIdList',
        en: 'priceTypeId',
        matchSelectKey: 'priceTypeList',
        lang: 'salePlain.list.filter.priceTypeIdList',
        type: 'select',
        options: [],
        config: {
            multiple: true
        },
        setLength: 24
    },
    {
        label: '渠道',
        en: 'channel',
        lang: 'salePlain.list.filter.channelIdList',
        value: 'channelIdList',
        type: 'highSearch',
        linkValue: 'channelFilterParam',
        highSearchConfig: {
            dialogSearchConfig: channelSearchConfig,
            apiUrl: commonApiUrl.channelFuzzy
        },
        setLength: 24
    },
    {
        label: '货品',
        en: 'goods',
        lang: 'salePlain.list.filter.goodsIdList',
        value: 'goodsIdList',
        type: 'highSearch',
        linkValue: 'goodsFilterParam',
        highSearchConfig: {
            dialogSearchConfig: goodsSearchConfig
        },
        setLength: 24
    }
];
export const billTableColumn: TableHeaderConfig[] = [
    {
        label: '单据编号',
        value: 'billNo',
        en: 'billNo',
        lang: 'salePlainAdjustment.detail.formList.billNo'
    },
    {
        label: '手工单号',
        value: 'manualId',
        en: 'manualId',
        lang: 'salePlainAdjustment.detail.formList.manualId'
    }
];
export const billSearchConfig = {
    formList: billFormList,
    tableColumn: billTableColumn,
    title: 'salePlainAdjustment.titleDialog',
    api: commonApiUrl.billHighSearch
    // selectApi: commonApiUrl.getBillNoSearchSelect
};
// 指令单搜索的配置
export const instructionSheetFormList: FormListConfig[] = [
    {
        label: '单据编号',
        value: 'billNo',
        en: 'code',
        lang: 'distributionHighSearch.formlist.billNo',
        type: 'input',
        options: [],
        setLength: 24
    },
    {
        label: '手工单号',
        value: 'manualId',
        en: 'manual',
        lang: 'distributionHighSearch.formlist.manualId',
        type: 'input',
        options: [],
        setLength: 24
    },
    {
        label: '发货渠道',
        value: 'channelIdList',
        en: 'Channel',
        lang: 'distributionHighSearch.formlist.channelId',
        type: 'highSearch',
        disabled: false,
        highSearchConfig: {
            dialogSearchConfig: Object.assign({}, channelSearchConfig),
            apiUrl: commonApiUrl.channelFuzzy,
            requestExtend: {
                channelType: 1
            }
        },
        setLength: 24
    },
    {
        label: '收货渠道',
        value: 'toChannelIdList',
        en: 'Channel',
        lang: 'distributionHighSearch.formlist.toChannelId',
        type: 'highSearch',
        disabled: false,
        highSearchConfig: {
            dialogSearchConfig: Object.assign({}, channelSearchConfig),
            apiUrl: commonApiUrl.channelFuzzy,
            requestExtend: {
                channelType: 2
            }
        },
        setLength: 24
    },
    {
        label: '价格类型',
        value: 'priceTypeIdList',
        en: 'Price type',
        lang: 'distributionHighSearch.formlist.priceTypeId',
        matchSelectKey: 'priceTypeList',
        type: 'select',
        setLength: 24,
        options: []
    },
    {
        label: '货品',
        en: 'goods',
        lang: 'distributionHighSearch.formlist.goodsIdList',
        value: 'goodsIdList',
        type: 'highSearch',
        linkValue: 'goodsFilterParam',
        highSearchConfig: {
            dialogSearchConfig: goodsSearchConfig
        },
        setLength: 24
    },
    {
        label: '单据日期',
        value: 'billDate',
        en: 'Document date',
        lang: 'distributionHighSearch.formlist.billDate',
        type: 'datePick',
        config: {
            type: 'date'
        },
        setLength: 24
    },
    {
        label: '备注',
        value: 'notes',
        en: 'Remark',
        lang: 'distributionHighSearch.formlist.notes',
        type: 'input',
        setLength: 24
    }
];
export const instructionSheetTableColumn: TableHeaderConfig[] = [
    {
        width: '100',
        label: '单据编号',
        value: 'billNo',
        en: 'bill Id',
        lang: 'distributionHighSearch.tableHeader.billNo'
    },
    {
        width: '100',
        label: '手工单号',
        value: 'manualId',
        en: 'bill Id',
        lang: 'distributionHighSearch.tableHeader.manualId'
    },
    {
        width: '100',
        label: '单据类型',
        value: 'businessTypeName',
        en: 'businessTypeName',
        lang: 'distributionHighSearch.tableHeader.businessTypeName'
    },
    {
        width: '120',
        label: '发货渠道',
        value: 'channelName',
        en: 'channelName',
        lang: 'distributionHighSearch.tableHeader.channelName'
    },
    {
        width: '120',
        label: '收货渠道',
        value: 'toChannelName',
        en: 'to ChannelName',
        lang: 'distributionHighSearch.tableHeader.toChannelName'
    },
    {
        width: '120',
        label: '备注',
        value: 'notes',
        en: 'notes',
        lang: 'distributionHighSearch.tableHeader.notes'
    }
];
export const instructionSheetSearchConfig = {
    formList: instructionSheetFormList,
    tableColumn: instructionSheetTableColumn,
    title: 'distributionHighSearch.title',
    api: commonApiUrl.noticeBillHighSearch
};

// 盘点计划搜索的配置
export const inventoryBillFormList: FormListConfig[] = [
    {
        label: '单据编号',
        value: 'billNo',
        en: 'code',
        lang: 'inventoryBillHighSearch.formlist.billNo',
        type: 'input',
        options: [],
        setLength: 24
    },
    {
        label: '手工单号',
        value: 'manualId',
        en: 'manual',
        lang: 'inventoryBillHighSearch.formlist.manualId',
        type: 'input',
        options: [],
        setLength: 24
    },
    {
        label: '盘点渠道',
        value: 'channelIdList',
        en: 'Channel',
        lang: 'inventoryBillHighSearch.formlist.channelId',
        type: 'highSearch',
        disabled: false,
        highSearchConfig: {
            dialogSearchConfig: Object.assign({}, channelSearchConfig),
            apiUrl: commonApiUrl.channelFuzzy,
            requestExtend: {
                channelType: 0
            }
        },
        setLength: 24
    },
    {
        label: '盘点类型',
        value: 'typeList',
        en: 'inventoryPlan Type',
        lang: 'inventoryBillHighSearch.formlist.inventoryPlanTypeIds',
        matchSelectKey: 'inventoryPlanTypeList',
        type: 'select',
        setLength: 24
    },
    {
        label: '单据日期',
        value: 'billDate',
        en: 'Document date',
        lang: 'inventoryBillHighSearch.formlist.billDate',
        type: 'datePick',
        config: {
            type: 'date'
        },
        setLength: 24
    }
];
export const inventoryBillTableColumn: TableHeaderConfig[] = [
    {
        label: '单据编号',
        value: 'billNo',
        en: 'bill Id',
        lang: 'inventoryBillHighSearch.tableHeader.billNo'
    },
    {
        label: '手工单号',
        value: 'manualId',
        en: 'manualId',
        lang: 'inventoryBillHighSearch.tableHeader.manualId'
    }
];
export const inventoryBillSearchConfig = {
    formList: inventoryBillFormList,
    tableColumn: inventoryBillTableColumn,
    title: 'inventoryBillHighSearch.title',
    api: commonApiUrl.inventoryBillSearch
};
// 发货单筛选
// 单据搜索的配置
export const sendFormList: FormListConfig[] = [
    {
        label: '单据编号',
        value: 'billNo',
        en: 'billNo',
        lang: 'terminalLogistics.detail.formList.billNo',
        type: 'input',
        setLength: 24
    },
    {
        label: '手工单号',
        value: 'manualId',
        en: 'manualId',
        lang: 'terminalLogistics.detail.formList.manualId',
        type: 'input',
        setLength: 24
    },
    {
        label: '业务类型',
        value: 'businessTypeIdList',
        en: 'businessTypeId',
        matchSelectKey: 'businessTypeList',
        lang: 'terminalLogistics.detail.formList.businessTypeId',
        type: 'select',
        options: [],
        config: {
            multiple: true
        },
        setLength: 24
    },
    {
        label: '价格类型',
        en: 'Price type',
        lang: 'terminalLogistics.list.filter.priceTypeIdList',
        value: 'priceTypeIdList',
        matchSelectKey: 'priceTypeList',
        type: 'select',
        config: {
            multiple: true
        },
        options: [],
        setLength: 24
    },
    {
        label: '发货渠道',
        en: 'channelId',
        lang: 'terminalLogistics.list.filter.channelId',
        value: 'channelIdList',
        type: 'highSearch',
        linkValue: 'channelIdFilterParam',
        disabled: false,
        highSearchConfig: {
            dialogSearchConfig: channelSearchConfig,
            apiUrl: commonApiUrl.channelFuzzy
        },
        setLength: 24
    },
    {
        label: '收货渠道',
        en: 'toChannelId',
        lang: 'terminalLogistics.list.filter.toChannelId',
        value: 'toChannelIdList',
        type: 'highSearch',
        linkValue: 'toChannelIdFilterParam',
        disabled: false,
        highSearchConfig: {
            dialogSearchConfig: channelSearchConfig,
            apiUrl: commonApiUrl.channelFuzzy
        },
        setLength: 24
    },
    {
        label: '货品',
        en: 'goods',
        lang: 'terminalLogistics.list.filter.goodsIdList',
        value: 'goodsIdList',
        linkValue: 'goodsIdListFilterParam',
        type: 'highSearch',
        highSearchConfig: {
            dialogSearchConfig: goodsSearchConfig
        },
        setLength: 24
    }
];
export const sendTableColumn: TableHeaderConfig[] = [
    {
        label: '单据编号',
        value: 'code',
        en: 'billNo',
        lang: 'salePlainAdjustment.detail.formList.billNo'
    },
    {
        label: '手工单号',
        value: 'name',
        en: 'manualId',
        lang: 'salePlainAdjustment.detail.formList.manualId'
    }
];

export const sendSearchConfig = {
    formList: sendFormList,
    tableColumn: sendTableColumn,
    title: 'terminalLogistics.titleDialog',
    api: commonApiUrl.sendHighSearch
    // selectApi: commonApiUrl.getBillNoSearchSelect
};
// 采购订单高级搜索
export const purchaseFormList: FormListConfig[] = [
    {
        label: '单据编号',
        value: 'billNo',
        en: 'code',
        lang: 'purchaseBillHighSearch.formlist.billNo',
        type: 'input',
        options: [],
        setLength: 24
    },
    {
        label: '手工单号',
        value: 'manualId',
        en: 'manual',
        lang: 'purchaseBillHighSearch.formlist.manualId',
        type: 'input',
        options: [],
        setLength: 24
    },

    {
        label: '业务类型',
        value: 'businessTypeIdList',
        en: 'businessTypeId',
        matchSelectKey: 'businessTypeList',
        lang: 'purchaseBillHighSearch.formlist.businessTypeId',
        type: 'select',
        options: [],
        config: {
            multiple: true
        },
        setLength: 24
    },
    {
        label: '供应商',
        en: 'supplierId',
        lang: 'purchaseBillHighSearch.formlist.supplierIdList',
        value: 'supplierIdList',
        type: 'highSearch',
        linkValue: 'supplierFilterParam',
        highSearchConfig: {
            dialogSearchConfig: supplierSearchConfig
        },
        setLength: 24
    },
    {
        label: '货品',
        en: 'goods',
        lang: 'purchaseBillHighSearch.formlist.goodsIdList',
        value: 'goodsIdList',
        type: 'highSearch',
        linkValue: 'goodsFilterParam',
        highSearchConfig: {
            dialogSearchConfig: goodsSearchConfig
        },
        setLength: 24
    },
    {
        label: '单据日期',
        value: 'billDate',
        en: 'Document date',
        lang: 'purchaseBillHighSearch.formlist.billDate',
        type: 'datePick',
        config: {
            type: 'date'
        },
        setLength: 24
    }
];
export const purchaseTableColumn: TableHeaderConfig[] = [
    {
        label: '单据编号',
        value: 'billNo',
        en: 'billNo',
        lang: 'purchaseBillHighSearch.tableHeader.billNo'
    },
    {
        label: '手工单号',
        value: 'manualId',
        en: 'manualId',
        lang: 'purchaseBillHighSearch.tableHeader.manualId'
    }
];
export const purchaseBillSearchConfig = {
    formList: purchaseFormList,
    tableColumn: purchaseTableColumn,
    title: 'purchaseBillHighSearch.title',
    api: commonApiUrl.purchaseHighSearch,
    selectApi: `/bill/purchaseBill/dropDown`
};
// 采购到货通知单高级搜索
export const purchaseNoticeFormList: FormListConfig[] = [
    {
        label: '单据编号',
        value: 'billNo',
        en: 'code',
        lang: 'purchaseNoticeHighSearch.formlist.billNo',
        type: 'input',
        options: [],
        setLength: 24
    },
    {
        label: '手工单号',
        value: 'manualId',
        en: 'manual',
        lang: 'purchaseNoticeHighSearch.formlist.manualId',
        type: 'input',
        options: [],
        setLength: 24
    },

    {
        label: '业务类型',
        value: 'businessTypeIdList',
        en: 'businessTypeId',
        matchSelectKey: 'businessTypeList',
        lang: 'purchaseNoticeHighSearch.formlist.businessTypeId',
        type: 'select',
        options: [],
        config: {
            multiple: true
        },
        setLength: 24
    },
    {
        label: '供应商',
        en: 'supplierId',
        lang: 'purchaseNoticeHighSearch.formlist.supplierIdList',
        value: 'supplierIdList',
        type: 'highSearch',
        linkValue: 'supplierFilterParam',
        highSearchConfig: {
            dialogSearchConfig: supplierSearchConfig
        },
        setLength: 24
    },
    {
        label: '收货渠道',
        value: 'toChannelIdList',
        en: 'Channel',
        lang: 'purchaseNoticeHighSearch.formlist.toChannelId',
        type: 'highSearch',
        disabled: false,
        highSearchConfig: {
            dialogSearchConfig: Object.assign({}, channelSearchConfig),
            apiUrl: commonApiUrl.channelFuzzy,
            requestExtend: {
                channelType: 2
            }
        },
        setLength: 24
    },
    {
        label: '货品',
        en: 'goods',
        lang: 'purchaseNoticeHighSearch.formlist.goodsIdList',
        value: 'goodsIdList',
        type: 'highSearch',
        linkValue: 'goodsFilterParam',
        highSearchConfig: {
            dialogSearchConfig: goodsSearchConfig
        },
        setLength: 24
    },
    {
        label: '单据日期',
        value: 'billDate',
        en: 'Document date',
        lang: 'purchaseNoticeHighSearch.formlist.billDate',
        type: 'datePick',
        config: {
            type: 'date'
        },
        setLength: 24
    },
    {
        label: '制单日期',
        en: 'Date of making order',
        lang: 'commonWord.createdTime',
        value: 'createdTime',
        config: {
            type: 'daterange'
        },
        type: 'datePick',
        setLength: 24
    },
    {
        label: '审核日期',
        en: 'Aduit Date',
        lang: 'commonWord.checkTime',
        value: 'checkTime',
        config: {
            type: 'daterange'
        },
        type: 'datePick',
        setLength: 24
    }
];
export const purchaseNoticeTableColumn: TableHeaderConfig[] = [
    {
        label: '单据编号',
        value: 'billNo',
        en: 'billNo',
        lang: 'purchaseNoticeHighSearch.tableHeader.billNo'
    },
    {
        label: '手工单号',
        value: 'manualId',
        en: 'manualId',
        lang: 'purchaseNoticeHighSearch.tableHeader.manualId'
    }
];
export const purchaseNoticeSearchConfig = {
    formList: purchaseNoticeFormList,
    tableColumn: purchaseNoticeTableColumn,
    title: 'purchaseNoticeHighSearch.title',
    selectApi: `/bill/purchaseBill/dropDown`,
    api: commonApiUrl.purchaseNoticeHighSearch
};

// 应收费用申请单高级搜索
export const payableSheetFormList: FormListConfig[] = [
    {
        label: '单据编号',
        value: 'billNo',
        en: 'code',
        lang: 'purchaseNoticeHighSearch.formlist.billNo',
        type: 'input',
        options: [],
        setLength: 24
    },
    {
        label: '手工单号',
        value: 'manualId',
        en: 'manual',
        lang: 'purchaseNoticeHighSearch.formlist.manualId',
        type: 'input',
        options: [],
        setLength: 24
    },

    {
        label: '供应商',
        en: 'supplierId',
        lang: 'purchaseNoticeHighSearch.formlist.supplierIdList',
        value: 'supplierIdList',
        type: 'highSearch',
        linkValue: 'supplierFilterParam',
        highSearchConfig: {
            dialogSearchConfig: supplierSearchConfig
        },
        setLength: 24
    },
    {
        label: '资金号',
        value: 'fundAccountIdList',
        en: 'Fund number',
        lang: 'supplierHighSearch.formlist.fundAccountId',
        type: 'select',
        matchSelectKey: 'fundAccountList',
        options: [],
        setLength: 24,
        config: {
            multiple: true
        }
    },
    {
        label: '单据日期',
        value: 'billDate',
        en: 'Document date',
        lang: 'purchaseBillHighSearch.formlist.billDate',
        type: 'datePick',
        config: {
            type: 'date'
        },
        setLength: 24
    }
];
export const payableSheetTableColumn: TableHeaderConfig[] = [
    {
        label: '单据编号',
        value: 'billNo',
        en: 'billNo',
        lang: 'purchaseNoticeHighSearch.tableHeader.billNo'
    },
    {
        label: '手工单号',
        value: 'manualId',
        en: 'manualId',
        lang: 'purchaseNoticeHighSearch.tableHeader.manualId'
    }
];
export const payableSheetSearchConfig = {
    formList: payableSheetFormList,
    tableColumn: payableSheetTableColumn,
    title: 'commonWord.payableSheet',
    selectApi: `/finance/prePayableApply/dropDown`,
    api: commonApiUrl.payableSheetHighSearch
};
export const userFormList: FormListConfig[] = [
    {
        label: '用户名称',
        value: 'userIdList',
        en: 'Customer Name',
        lang: 'userHighSearch.formlist.userIds',
        type: 'filter',
        fuzzyConfig: {
            apiUrl: commonApiUrl.userFuzzy,
            multiple: true
        },
        setLength: 24
    },
    {
        label: '角色',
        value: 'roleIdList',
        matchSelectKey: 'roleList',
        en: 'Roles',
        lang: 'userHighSearch.formlist.roleIds',
        type: 'select',
        config: {
            multiple: true
        },
        options: [],
        setLength: 24
    },
    {
        label: '数据集',
        value: 'dataIdList',
        matchSelectKey: 'dataList',
        en: 'Dataset',
        lang: 'userHighSearch.formlist.dataIds',
        type: 'select',
        options: [],
        config: {
            multiple: true
        },
        setLength: 24
    }
];
export const userTableColumn: TableHeaderConfig[] = [
    {
        value: 'code',
        label: '用户编号',
        en: 'User Id',
        lang: 'userHighSearch.userTableColumn.code'
    },
    {
        value: 'name',
        label: '用户名称',
        en: 'Username',
        lang: 'userHighSearch.userTableColumn.name'
    }
];
export const userSearchConfig = {
    formList: userFormList,
    tableColumn: userTableColumn,
    title: 'userHighSearch.title',
    api: commonApiUrl.userHighSearch,
    selectApi: commonApiUrl.getSelect
};
